home *** CD-ROM | disk | FTP | other *** search
/ ftp.mayn.de / ftp.mayn.de-pub.zip / ftp.mayn.de-pub / apple / macintosh / telnet / Niftytelnet_SSH_r3.sit.hqx / niftytelnet-1.1-ssh-r3 Folder / README SSH support < prev    next >
Text File  |  1999-06-07  |  18KB  |  243 lines

  1. NiftyTelnet 1.1 SSH r3
  2. June 7, 1999
  3.  
  4. By Jonas WalldÄn, <jonasw@lysator.liu.se>. Based on NiftyTelnet 1.1 by Chris Newman, <chrisn+@cmu.edu>.
  5. NiftyTelnet 1.1 SSH home page: <http://www.lysator.liu.se/~jonasw/freeware/>.
  6.  
  7.  
  8. Important notes
  9. ¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼
  10. Due to a patent conflict on the RSA public-key encryption algorithm this software cannot be used in United States. Affected users may want to try the commercial F-Secure SSH from Data Fellows, Inc instead.
  11.  
  12. People living in countries where use of encryption software is illegal should not use this program. Check with your local authorities if you are not sure.
  13.  
  14. This version is based on the US-exportable release of NiftyTelnet and therefore doesn't include the old-style telnet encryption algorithms used in the US-only distribution.
  15.  
  16.  
  17. What is NiftyTelnet 1.1 SSH?
  18. ¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼
  19. It is a modified version of NiftyTelnet 1.1 where support for the SSH (Secure Shell) protocol has been incorporated. SSH is the de-facto standard for secure terminal sessions in the Unix world, and it's now available for free to the Macintosh community as well.
  20.  
  21.  
  22. What is new in Release 3 (r3) of the SSH implementation?
  23. ¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼
  24. The most important additions are Scp (Secure Copy), RSA authentication, and printing. Moreover, a number of other enhancements and bug fixes have been included. Details are available in the Version History section at the end of this document.
  25.  
  26.  
  27. How do I use it?
  28. ¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼
  29. To enable the SSH protocol for a session, bring up the edit dialog for your connection shortcut. Switch to one of the SSH encryption methods using the popup menu and you're all set!
  30.  
  31.  
  32. What features does/doesn't NiftyTelnet 1.1 SSH implement?
  33. ¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼
  34. NiftyTelnet 1.1 SSH implements a subset of the SSH 1.5 protocol. Supported encryption algorithms are: DES, 3DES and Blowfish. The IDEA algorithm is not available since commercial use requires a license, and the Arcfour algorithm has been disabled since it could introduce security problems when used in the SSH 1.x protocol.
  35.  
  36. Password and RSA public-key authentication methods are supported. Features still missing include TCP port forwarding and data compression but they will be considered for future versions. Users in need of a full-blown SSH implementation for the Mac should try the Data Fellows, Inc F-Secure SSH client instead. The web page for this company is <http://www.datafellows.com/>. Another Mac client which handles port forwarding is the free Java-based MindTerm client which can be downloaded from <http://www.mindbright.se/>.
  37.  
  38. In addition to the SSH protocol NiftyTelnet 1.1 SSH includes a couple of changes to the core of NiftyTelnet. The terminal emulation now defaults to the ISO 8859-1 character set, and the user interface has been updated to take advantage of the Appearance Manager in System 8 and later. There have also been some changes to handle printing and keyboard mapping which was requested by a lot of users.
  39.  
  40.  
  41. Copying files securely
  42. ¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼
  43. Scp stands for Secure Copy and is a protocol for transferring files to or from a remote host. It uses SSH as the low-level communications protocol and therefore benefits from the security present in SSH. The NiftyTelnet 1.1 SSH implementation is limited by the fact that Scp is a very basic protocol which requires entering of file names into a dialog box instead of browsing a list of all available files.
  44.  
  45. Scp is accessed by clicking the ╥Scp...╙ button in the New Connection dialog box. It opens a new window where the files to send/receive are specified. When receiving files from the remote host one can enter several file names separated by space. The syntax is the same as for the Unix version of Scp which means that wildcards are possible and quoting is needed for special characters.
  46.  
  47. The dialog window supports drag-and-drop from the Finder to add files or to set the download folder. If Internet Config is installed NiftyTelnet 1.1 SSH will try to match file type/creator and extensions to determine whether the transfer should be done as text (converting character set and linefeeds) or binary (no conversion). This can be overridden by selecting the appropriate radio button. The ╥Copy Contents of Nested Folders╙ checkbox is equivalent to the -r (recursive copy) option in the Unix version.
  48.  
  49.  
  50. Authentication using RSA public/private key files
  51. ¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼
  52. This is an alternative authentication method which can be used instead of passwords. It requires public/private key files which can be generated on the remote host using the ╥ssh-keygen1╙ (or similar) utility. Add the public key to your ╥~/.ssh/authorized_keys╙ file and copy the private key to the Mac ╤ using Scp of course! ╤ and put it in the same folder as the NiftyTelnet 1.1 SSH application. To enable the key the name of the key file must be entered in the shortcut settings dialog.
  53.  
  54. Important note: The contents of the private key file is highly sensitive and should not be made available to other people! If the passphrase is set to an empty string it means that anyone who copies the key file can use it to access to your account. Don't use empty passphrases unless you know what you are doing!
  55.  
  56.  
  57. How do I use printing?
  58. ¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼
  59. There are three ways to print data in NiftyTelnet 1.1 SSH: print screen, print selection, and remote printing. The first two are self-explanatory but the last one deserves special attention. By sending escape sequences to your terminal window you can start and stop capturing of printer output. These sequences are ╥ESC[5i╙ and ╥ESC[4i╙, respectively. As soon as all printer data has been successfully captured you will see the standard printing dialog window where the usual settings are available. In case sending of printing data is interrupted the capturing mode can be aborted by selecting Reset in the Session menu.
  60.  
  61. The Page Setup command can be used to set the printer font and font size as well as the margins. Note that recent versions of the LaserWriter driver hide these settings in one of the pages accessible from the popup menu so they may not be easy to find at first glance.
  62.  
  63. When printing NiftyTelnet 1.1 SSH will honor line-feed and form-feed characters; however, lines which extend beyond the right-hand margin will not be wrapped.
  64.  
  65.  
  66. What is the purpose of the ╥NiftyTelnet SSH Known Hosts╙ file?
  67. ¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼
  68. Whenever you connect to a host NiftyTelnet 1.1 SSH receives a public encryption key. If this key is not known before you have the option to add it to the Known Hosts file. The next time you connect NiftyTelnet 1.1 SSH will compare the key to the one found in the file to see if it has changed; a change may indicate a network intrusion attack which means your password is at risk if you don't disconnect immediately. There are other things that can trigger a change of the key so you may want to ask your system administrator for advice.
  69.  
  70. The Known Hosts file is by default placed in your Preferences folder but can be moved into the same folder as the application itself. You can edit it using any text editor and the format is compatible with the ╥~/.ssh/known_hosts╙ file in the Unix version.
  71.  
  72.  
  73. Where do I send feedback?
  74. ¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼
  75. Please send bug reports, comments or feature requests to the email address listed at the top of this document. For bug reports it is very helpful if you include detailed information on how to reproduce the bug and the configuration of your computer.
  76.  
  77.  
  78. What source code was used to implement the SSH protocol?
  79. ¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼
  80. I used the public domain library Crypt++ 2.1 for the encryption. All other source code, except as noted in the copyright section, was written by me from scratch. This is not a port of the Unix version and it is therefore not subject to the license limitations of that distribution.
  81.  
  82.  
  83. Is the source code available?
  84. ¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼
  85. The author of NiftyTelnet, Chris Newman, has requested that the source for NiftyTelnet should no longer be distributed. The source for my additions are not available at this time because of Swedish crypto export legislation.
  86.  
  87.  
  88. Why can't this program be used within United States?
  89. ¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼
  90. The RSA public-key encryption algorithm is patented by RSA Data Security, Inc. This makes it impossible to use other implementations of the RSA algorithm in countries where the patent is valid. A discussion on this patent can be found at <http://www.cyberlaw.com/rsa.html>.
  91.  
  92.  
  93. Where can I get more information on NiftyTelnet or SSH in general?
  94. ¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼
  95. The documentation for NiftyTelnet 1.1 is included in this distribution. Please read it for information on NiftyTelnet in general. There is also an Apple Guide help file which is accessible from inside the application by selecting ╥NiftyTelnet Guide╙ from the Help menu.
  96.  
  97. The NiftyTelnet home page is <http://andrew2.andrew.cmu.edu/dist/niftytelnet.html>.
  98.  
  99. There is a SSH FAQ (Frequently Asked Questions) page at <http://www.employees.org/~satch/ssh/faq/>. Another source of information is the ╥man╙ command on a Unix system; ╥man ssh╙ and ╥man scp╙ are good starting points.
  100.  
  101.  
  102. Distribution
  103. ¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼
  104. NiftyTelnet 1.1 SSH may only be distributed as long as no fee is charged. Also, any distribution must be in accordance to the restrictions listed at the top of this document.
  105.  
  106.  
  107. Acknowledgements
  108. ¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼
  109. Special thanks to Chris Newman for letting me use his excellent NiftyTelnet as the foundation for my SSH client. Thanks to Ariel Futoransky for granting me permission to include the CORE SDI attack detection patch.
  110.  
  111. I also want to thank all users who have sent bug reports, suggestions and other feedback. You are far too many to be listed here but your help is very much appreciated!
  112.  
  113.  
  114. Copyright
  115. ¼¼¼¼¼¼¼¼¼¼¼¼¼¼
  116. SSH implementation:
  117.  
  118.   Copyright ⌐ 1998-1999 Jonas WalldÄn.
  119.   MD5 implementation ⌐ 1995 Eric Young.
  120.   CRC32 attack detection patch ⌐ 1998 CORE SDI S.A., Buenos Aires, Argentina. All rights reserved.
  121.  
  122.   THIS SOFTWARE COMES WITHOUT WARRANTIES. THE SOFTWARE IS PROVIDED AS IS AND
  123.   JONAS WALLDEN AND ALL OTHER COPYRIGHT HOLDERS DISCLAIM WARRANTIES OF ANY KIND,
  124.   INCLUDING EXPRESSED AND IMPLIED WARRANTIES. IN NO EVENT SHALL THE COPYRIGHT
  125.   HOLDERS BE LIABLE FOR DAMAGES, INCLUDING BUT NOT LIMITED TO GENERAL, SPECIAL,
  126.   DIRECT, INDIRECT, EXEMPLARY OR CONSEQUENTIAL DAMAGES, RESULTING FROM USE OR
  127.   MISUSE OF THIS SOFTWARE, OR LOSS OF USE, DATA OR PROFITS.
  128.  
  129. NiftyTelnet 1.1:
  130.  
  131.   Copyright ⌐ 1990-1996 by Christopher J. Newman. All Rights Reserved.
  132.  
  133.   Permission to use, copy, modify, and distribute this software and its
  134.   documentation for any purpose is hereby granted without fee, provided that
  135.   the above copyright notice appear in all copies and that both that
  136.   copyright notice and this permission notice appear in supporting
  137.   documentation, and that the name of Christopher J. Newman not be used in
  138.   advertising or publicity pertaining to distribution of the software without
  139.   specific, written prior permission.  Christopher J. Newman makes no
  140.   representations about the suitability of this software for any purpose.  It
  141.   is provided "as is" without express or implied warranty.
  142.  
  143.   CHRISTOPHER J. NEWMAN DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
  144.   INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT
  145.   SHALL CHRISTOPHER J. NEWMAN BE LIABLE FOR ANY SPECIAL, INDIRECT OR
  146.   CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
  147.   DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
  148.   TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE
  149.   OF THIS SOFTWARE.
  150.  
  151.  
  152. Version history
  153. ¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼¼
  154. NiftyTelnet 1.1 SSH r3 ╤ June 7, 1999:
  155.  
  156. Fixed crash at end of Scp file transfers on Macs running System 7.x.
  157.  
  158. No more ╥Junk data╙ log messages on host computer after completed Scp operations. This bug was probably also responsible for the infinite error messages bug when running out of disk space while receiving a file.
  159.  
  160. A bug causing a lockup when connecting to a non-SSHd port is fixed. NiftyTelnet 1.1 SSH used to sit in an infinite loop waiting for a response message which never arrived.
  161.  
  162. Scp now handles file names containing space characters better than before.
  163.  
  164. Scp preserves file name extensions when truncating names longer than 31 characters. This makes it easier for Internet Config to determine the best file type and creator for received files.
  165.  
  166. Provided additional control over what transfer mode (text/binary) is used for Scp.
  167.  
  168. Improvements to the way memory buffers are used. NiftyTelnet 1.1 SSH will now use temporary memory if needed for large transfers which means that the default memory partition should be sufficient for all but the most extreme cases.
  169.  
  170. Added some code to prevent annoying white flicker when updating windows with non-white background.
  171.  
  172. VT100 graphics characters are now shown no matter which font is used.
  173.  
  174. Printing! This includes print screen, print selection, and remote printing (activated by VT100 escape sequences). Located in the Page Setup window are settings for font, font size and margins. When capturing print data the startup disk is used for spooling to avoid running out of memory.
  175.  
  176. Rewrote parts of the connection process to retry authentication if the first attempt fails. Note that the user name field is locked since the name has already been sent to the host and cannot be changed at that time.
  177.  
  178. Complete rewrite of font scanning. The previous code inherited from NiftyTelnet was broken and very slow on Macs with Adobe Type Reunion and a large number of fonts installed. (I don't remember if this fix was included in the public r3 beta, but probably not.)
  179.  
  180. Passwords are now sent using ISO 8859-1 encoding. (Thanks to my brother Daniel for reporting this bug!)
  181.  
  182. Updated error message for failed RSA authentication attempts.
  183.  
  184. RSA passphrases may be cached in RAM until the application quits or they are purged automatically (which happens after a number of hours).
  185.  
  186. The Meta key, which used to be hardwired to Control+Command, is now customizable. Note that selecting Command only will disable menu shortcuts, and using Option only will make a special characters inaccessible from the keyboard.
  187.  
  188. Added a setting for sending escape sequences for Insert, Delete, Home, End, Page Up and Page Down keys. By combining with any of Control, Option or Shift keys the behavior opposite to the selected setting can be accessed.
  189.  
  190. Finder aliases for the Preferences file, the Known Hosts file and RSA private key files are now resolved correctly.
  191.  
  192. Interpretation of ╥meta characters╙ is avoided when placing shortcut names into menus. Previously characters such as ( and - caused menu items to be disabled or missing.
  193.  
  194. Added clickable URL to the About window.
  195.  
  196. NiftyTelnet 1.1 SSH r3 beta ╤ February 8, 1999:
  197.  
  198. First implementation of Scp.
  199.  
  200. RSA authentication.
  201.  
  202. Some screen updating problems fixed, particularly scrollbars which were not redrawn correctly, and areas behind dialog windows.
  203.  
  204. Disabled any command key shortcuts except Command-A and Command-. in password fields.
  205.  
  206. Integrated patch for launching on PowerMac computers using MacTCP.
  207.  
  208. Fixed so forward delete key works in dialog boxes.
  209.  
  210. NiftyTelnet 1.1 SSH r2 ╤ November 17, 1998:
  211.  
  212. Fixed a crashing bug in the internal buffering of network data. This would mainly cause trouble when pasting or dragging large amounts of text into a terminal window.
  213.  
  214. Entering passwords longer than 16 characters should no longer crash the application. The maximum password length has been increased to around 250.
  215.  
  216. Double-clicking the ╥NiftyTelnet SSH Known Hosts╙ file is no longer causing a crash. Instead an error message tells the user to open the file in a text editor.
  217.  
  218. Command-. now works as a shortcut for the Cancel button in the password authentication dialog even when the password text field is the current input field.
  219.  
  220. The about box and documentation have been updated on the RSA patent restrictions. As far as I know only U.S. users are affected, not all North American users as previously stated.
  221.  
  222. Added a warning to the documentation about the lack of old-style telnet encryption in this application. Users in need of this feature should get the US-only release of NiftyTelnet 1.1.
  223.  
  224. NiftyTelnet 1.1 SSH ╤ August 20, 1998:
  225.  
  226. Changed the way disconnect and exit confirmation messages are sent to the server to be more in line with the protocol specification.
  227.     
  228. Added the CORE SDI crc32 attack detection patch.
  229.     
  230. Disabled the Arcfour cipher since it's no longer considered secure when used in the SSH 1.x protocol. It may return later on if SSH 2.0 protocol support is added.
  231.     
  232. Merged the PPC and 68K applications into a single fat binary.
  233.     
  234. Set the Known Hosts file type to TEXT and changed the line breaks to Mac standard.
  235.     
  236. More error checking for out of memory conditions.
  237.  
  238. Moved a handful of hardcoded strings into the resource fork to ease localization.
  239.  
  240. NiftyTelnet 1.1 SSH beta 1 ╤ July 21, 1998:
  241.  
  242. First ╥public╙ release. Very limited distribution.
  243.